Propshaft default for Rails 8, Guides updates, transaction.active_record events, and more! | This Week in Rails
Rails World 2024のスピーカーが公開された、というお知らせです
Rails 8 からアセットパイプラインのデフォルトライブラリがPropshaftになります PropshaftはRailsのアセットパイプライン用のライブラリです
Sprocketsのような従来のライブラリと比較して搭載する機能を厳選することで、シンプルかつ高速なアセットパイプラインを実現しています PropshaftはSprocketsに比べて機能が少ないので移行の作業量は大きいかもしれません
移行したい場合はガイトに沿って進めるとよさそうです
Railsガイドに「Tuning Performance for Deployment」というページが追加されます
This guide assumes you are running MRI, the canonical implementation of Ruby also known as CRuby. If you're using another Ruby implementation such as JRuby or TruffleRuby, most of this guide doesn't apply. If needed, check sources specific to your Ruby implementation.
(このガイドでは、 CRuby としても知られる Ruby の標準実装であるMRIを実行していることを前提としています。JRuby や TruffleRuby などの別の Ruby 実装を使用している場合、このガイドの大部分は適用されません。必要に応じて、Ruby 実装に固有のソースを確認してください。)
このガイドはRailsのデフォルトのアプリケーションサーバーであるPumaのチューニング方法を主眼としています Pumaの重要なパフォーマンス設定、および、パフォーマンステストの実施方法について解説しています
ActiveRecordに関する変更です
ActiveRecordに readonly? というメソッドがあります
readonlyなレコードの場合にtrueを返すメソッドです
code:rb
users = User.readonly.where(active: true)
user = users.first
user.readonly? # => true
今回のプルリクエストでは ActiveRecord::Relation に対して readonly? メソッドを追加しています
code:rb
users = User.readonly.where(active: true)
users.readonly? # => true (これまでこのメソッドがなかった)
user = users.first
user.readonly? # => true